دالة LOOKUP في Excel

دوال البحث والمراجع

الغرض من الدالة

تُستخدم دالة LOOKUP للبحث عن قيمة معينة في صف أو عمود وإرجاع القيمة المقابلة من الصف أو العمود المقابل.
تتميز هذه الدالة بوجود شكلين رئيسيين: الشكل المتجه (Vector Form) والشكل المصفوفي (Array Form). على الرغم من بساطتها، إلا أنها تتطلب في معظم استخداماتها أن تكون البيانات مرتبة تصاعدياً للحصول على نتائج دقيقة، وتُرجع دائماً تطابقاً تقريبياً (أقرب قيمة أقل من أو تساوي قيمة البحث) إذا لم تجد تطابقاً تاماً، أو آخر قيمة مطابقة في حالة وجود تكرارات.

هام: ننصحك بالاطلاع على دوال البحث الأحدث، وذلك بناءً على إصدار البرنامج الذي تستخدمه:

  • استخدم VLOOKUP: هذه الدالة تعد تحسيناً كبيراً على LOOKUP، وهي مثالية للبحث ضمن صف واحد أو عمود واحد، أو حتى للبحث في نطاقات متعددة من الصفوف والأعمدة (مثل الجداول).
  • لمستخدمي Microsoft 365، استخدم XLOOKUP: هذه الدالة ليست أسرع فحسب، بل تتيح لك أيضاً البحث في أي اتجاه (أعلى، أسفل، يمين، يسار)، مما يجعلها خياراً أكثر مرونة وقوة.

صيغة الدالة (Syntax)

LOOKUP(lookup_value, lookup_vector, [result_vector]) أو LOOKUP(lookup_value, array)
  • lookup_value: القيمة التي تريد البحث عنها. (مطلوب).
  • lookup_vector: نطاق من صف واحد أو عمود واحد يتم البحث فيه عن `lookup_value`. يجب أن تكون القيم في هذا النطاق مرتبة تصاعدياً. (مطلوب للشكل المتجه).
  • result_vector: نطاق من صف واحد أو عمود واحد يحتوي على القيم التي تريد إرجاعها. يجب أن يكون بنفس حجم `lookup_vector`. (اختياري للشكل المتجه).
  • array: نطاق من الخلايا يحتوي على البيانات التي سيتم البحث فيها. يجب أن تكون القيم في الصف/العمود الأول مرتبة تصاعدياً إذا كنت تريد تطابقاً تقريبياً. (مطلوب للشكل المصفوفي).

أمثلة عملية

المثال 1: البحث عن سعر منتج (الشكل المتجه - بيانات مرتبة)

لدينا قائمة بأسعار المنتجات مرتبة حسب معرف المنتج. نريد إيجاد سعر المنتج ذي المعرف 'P003'.

AB
1معرف المنتجالسعر
2P001150
3P002200
4P003250
5P004300
6سعر P003250

الصيغة المستخدمة:

=LOOKUP("P003", A2:A5, B2:B5)

توضيح: تبحث الدالة عن 'P003' في النطاق A2:A5 (المتجه البحثي) وترجع القيمة المقابلة من النطاق B2:B5 (المتجه الناتج).

المثال 2: تحديد مستوى الخصم (الشكل المتجه - تطابق تقريبي)

نريد تحديد نسبة الخصم المطبقة بناءً على إجمالي قيمة الطلب. الجدول يوضح مستويات الخصم، ويجب أن تكون قيم 'الحد الأدنى للطلب' مرتبة تصاعدياً.

AB
1الحد الأدنى للطلبنسبة الخصم
200%
31005%
450010%
5100015%
6قيمة الطلب750
7نسبة الخصم10%

الصيغة المستخدمة:

=LOOKUP(B6, A2:A5, B2:B5)

توضيح: تبحث الدالة عن 750 في النطاق A2:A5. بما أنه لا يوجد تطابق تام، فإنها تجد أكبر قيمة أقل من أو تساوي 750 (وهي 500) وترجع نسبة الخصم المقابلة لها (10%).

المثال 3: إيجاد آخر تسجيل لدرجة طالب (الشكل المصفوفي - بيانات غير مرتبة)

لدينا قائمة بدرجات الطلاب غير مرتبة، ونريد إيجاد آخر درجة مسجلة للطالب 'علي'.

AB
1اسم الطالبالدرجة
2أحمد85
3علي70
4سارة92
5علي78
6محمد65
7آخر درجة لعلي78

الصيغة المستخدمة:

=LOOKUP("علي", A2:B6)

توضيح: في الشكل المصفوفي، تبحث الدالة عن 'علي' في العمود الأول (A2:A6). بما أن النطاق A2:B6 ليس مرتباً، فإن LOOKUP ستجد آخر ظهور لـ 'علي' في العمود A وترجع القيمة المقابلة من العمود الأخير في `array` (وهو العمود B). هذا الاستخدام مفيد لإيجاد آخر قيمة في قائمة غير مرتبة.

نوصي بشدة باستخدام دالتي VLOOKUP أو HLOOKUP بدلاً من الشكل المصفوفي لدالة LOOKUP. على الرغم من أن الشكل المصفوفي لدالة LOOKUP متوفر لضمان التوافق مع برامج جداول البيانات الأخرى، إلا أن وظائفه محدودة.